Delivery of network services

ABSTRACT

A network element includes at least one input to receive communications from a plurality of terminal devices and a plurality of network elements, a processing unit and logic to classify the communications as a type of user information, and a router to route the communications according to the type of user information. The communication may be routed to at least one of a plurality of subnetworks according to the type of user information.

PRIORITY CLAIM

[0001] Priority is hereby claimed to the United States provisionalapplication for patent entitled IMPROVED DELIVERY OF NETWORK SERVICES,having application No. 60/421537, filed on Oct. 25, 2002.

FIELD

[0002] The invention relates to communications, and, more particularly,to communication via a network.

BACKGROUND

[0003] Wireless telephones are popular, ubiquitous devices. It is nowpossible to make and receive phone calls from almost any place in theworld. Communication is even possible from remote and undeveloped areasusing wireless satellite telephones. Herein, the term wireless telephonerefers to any device capable of transmitting and receiving voice and/ordata (non-voice) information to and from a network without the use ofwires, cables, or other tangible transmission media. So-called cellulartelephones are a common example of wireless phones.

[0004] Wireless telephones and the networks by which they communicateoperate according to various technologies, including analog mobile phoneservice (AMPS), circuit switching, packet switching, wireless local areanetwork (LAN) protocols, code division multiple access (CDMA), timedivision multiple access (TDMA), frequency-division multiplexing (FDM),spread-spectrum, global system for mobile communications (GSM),high-speed circuit-switched data (HCSD), general packet radio system(GPRS), enhanced data GSM environment (EDGE), and universal mobiletelecommunications service (UMTS). Of course, these are only examples,and other technologies may be employed in wireless communication aswell.

[0005] Herein, the term ‘wireless device’ is meant to include wirelesstelephones (including cellular, mobile, and satellite telephones), andalso to include a variety of other wireless devices, including wirelessweb-access telephones, automobile, laptop, and desktop computers thatcommunicate wirelessly, and wireless personal digital assistants (PDAs).In general, the term ‘wireless device’ refers to any device withwireless communication capabilities.

[0006] Many companies produce wireless telephones and other wirelessdevices. Among the more well-known producers are Nokia®, Ericsson®,Motorola®, Panasonic®, Palm® Computer, and Handspring®. A variety ofproducers also provide wireless devices comprising versions of theMicrosoft® Windows® operating software.

[0007] Third generation (3G) wireless devices provide high-bandwidthwireless access to communication networks. With such devices it may bepossible to provide services to wireless devices such as streamingvideo, multimedia messaging, and so forth. Users of the network may, atdifferent times, employ different devices to access the network. Thequality and availability of services may vary according to thecapabilities of the device employed for access, the access device'spresent operating environment, and other dynamic parameters.

SUMMARY

[0008] In one embodiment, a network element includes at least one inputto receive communications from a plurality of terminal devices and aplurality of network elements, a processing unit and logic to classifythe communications as a type of user information, and a router to routethe communications according to the type of user information. Thecommunication may be routed to at least one of a plurality ofsubnetworks according to the type of user information.

[0009] In another embodiment, a mobile switching center identifiescommunications comprising user information as at least one of terminalcapabilities, service information, and network information, and routesthe communications according to whether the communications is terminalcapabilities, service information, or network information.

[0010] In another embodiment, a network includes a classifier toclassify communications as a type of user information, a router to routethe communications according to the type of user information, aplurality of network elements to receive the communications from therouter and to process a type of user information, at least one of a homelocation registry and a home subscriber system to store userinformation, and a controller to receive user information from theplurality of network elements and to cause the user information to bestored in the at least one of a home location registry and the homesubscriber system

FIGURES

[0011] The invention may be better understood with reference to thefollowing figures in light of the accompanying description. The presentinvention, however, is limited only by the scope of the claims at theconcluding portion of the specification.

[0012]FIG. 1 is a block diagram of an embodiment of a communicationnetwork environment.

[0013]FIG. 2 is a block diagram illustrating an embodiment of userinformation stored in a Home Location Registry.

[0014]FIG. 3 is a flowchart of an embodiment of a method to provide userinformation for a roaming user.

[0015]FIG. 4 is a block diagram of an embodiment of terminal capabilityinformation.

[0016]FIG. 5 is a block diagram of an embodiment of service requirementinformation.

[0017]FIG. 6 is a flowchart of an embodiment of a method of handlingchanges in a user's terminal capabilities.

[0018]FIG. 7 is a block diagram of an embodiment of a wirelesstelephone.

[0019]FIG. 8 is a block diagram of a network embodiment.

[0020]FIG. 9 is a block diagram of a network embodiment.

[0021]FIG. 10 is a block diagram of a network embodiment.

[0022]FIG. 11 is a block diagram of a network embodiment.

[0023]FIG. 12 is a flow chart of an embodiment of a method to provideservices to terminal devices.

DESCRIPTION

[0024] In the following description, references to “one embodiment” or“an embodiment” do not necessarily refer to the same embodiment,although they may. In the figures, like numbers refer to like elements.

[0025] Herein, “logic” refers to any information having the form ofinstruction signals and/or data that may be applied to affect theoperation of a processing device. Examples of processing devices arecomputer processors (processing units), microprocessors, digital signalprocessors, controllers and microcontrollers, and so on. Logic may beformed from signals stored in a device memory. Software is one exampleof such logic. Examples of device memories that may comprise logicinclude RAM (random access memory), flash memories, ROMS (read-onlymemories), EPROMS (erasable programmable read-only memories), andEEPROMS. Logic may also be comprised by digital and/or analog hardwarecircuits, for example, hardware circuits comprising logical AND, OR,XOR, NAND, NOR, and other logical operations. Logic may be formed fromcombinations of software and hardware.

[0026]FIG. 1 is a block diagram of an embodiment of a wireless networkenvironment. A base station controller (BSC) 104 network element iscoupled to an antennae 108 to receive signals from a wireless device133. The BSC 104 is coupled to a mobile switching center (MSC) 116network element that is responsible, among other things, for routingcalls and communications to their appropriate destination. Herein, theterm “network element” refers to any one or more devices of acommunication network, e.g. devices that participate at leastoccasionally in the operation of the network. Other components includedin a typical MSC 116, such as a processor, memory, and variousinput/output devices, have been omitted for clarity of discussion. TheMSC 116 is coupled to a terrestrial (non-wireless) communication network114 to enable, among other things, communication with wired devices suchas home and business telephones. The MSC 116 is coupled by way of theterrestrial communication network 114 to a second wireless communicationnetwork comprising MSC 126.

[0027] A service provider 160 is coupled to MSC 116 to provide servicessuch as streaming video, multimedia messaging (for example, to helpenable the Multimedia Messaging Service, or MMS, which provides for thecommunication of video and other advanced multimedia formats), and soon. A similar service provider 142 is coupled to MSC 126. A serviceprovider is any device or combination of devices that providesinformation to terminal devices (wireless telephones, etc.) or to otherservice providers via the network environment.

[0028] A Home Location Registry (HLR) 120 stores records (collections ofdata) for users and/or terminal devices that have subscribed for accessto the network comprising MSC 116. Each record may be referred to hereinas user information. A second HLR 128 performs a similar function forthe network comprising MSC 126. Herein, “terminal device” refers to anydevice employed by a user (typically a person but also possibly anautonomous or semi-autonomous device system) to access the networkenvironment. When a device is roaming on the network (e.g. the user ofthe device is subscribed to a network other than the one comprising MSC116), such user information may be stored in a Visitor Location Registry(VLR) 122. The network comprising MSC 126 also comprises a VLR 110.

[0029] In another embodiment, the user information may be stored by anetwork element such as a Home Subscriber Server (HSS) that is shared byone or more networks of the network environment.

[0030] An access control network element 144 controls access to the userinformation stored by the HLR 120. The access control 144 ensures thatonly those network elements of the network environment which areauthorized to access the user information may do so. In one embodimentaccess control is provided according to an id/password scheme. Theaccess control 144 is shown as a stand-alone network element for clarityof explanation. In practice, it may be a stand-alone device orfunctionally incorporated into one or more other network elements, suchas the HLR 120.

[0031]FIG. 2 is a block diagram illustrating an embodiment of userinformation 202 stored in a Home Location Registry 204. In variousembodiments, the user information 202 may be associated with anindividual user, a terminal device, or a group of more than one users ormore than one terminal devices. The user information 202 comprises mediadelivery preferences (also called user preferences), payment parameters,usage information, terminal capabilities, readiness information,presence information, and location information for one or more usersand/or terminal devices. Media delivery (user) preferences includeinformation about the manner in which information should be delivered tothe user and/or terminal device. Payment parameters include informationabout how much the user is willing to pay to have information delivered,and possibly how payment will be provided. Usage information comprisesinformation about the user's access to the network environment, possiblyincluding how, when, how often, and for what purpose the user accessedthe network environment. Usage information may include information aboutwhich services a user accesses and/or how often, and/or the mostrecently used and/or most frequently accessed services. In oneembodiment, this information or portions thereof is collected by the MSC116 associated with the HLR 204. Where an HSS or other central storagelocation is employed by multiple networks, multiple MSCs may contributeto collection and storage of the usage information for terminals and/orusers, and access control may be provided according to which MSCcollected the information, and/or which MSC is comprised by a homenetwork for the user and/or terminal.

[0032] Terminal capabilities comprises information about the terminaldevice's capabilities to receive, process, and display information.Readiness information comprises information about the terminal device'sreadiness to receive information from the network, for example, if thedevice is ready, not ready, sleeping, on standby, and so on. Presenceinformation comprises information about whether or not the user of theterminal device is currently present to operate and/or receiveinformation via the terminal device. The readiness information and thepresence information together may establish whether the terminalequipment is ready to receive, process, and display information, andwhether the user of the terminal device is present to operate and/orreceive information via the terminal.

[0033] Location information comprises information about the location ofthe device. Such information may be useful in determining the type ofinformation to deliver, the quality and quantity of information todeliver, and so on. Location information may be ‘literal’, e.g. ageographic address or location, or ‘logical’, e.g. “In a Meeting”, “InTransit”, and so on.

[0034] The user information 202 may be employed by service providersand/or the network environment to determine the appropriate frame rate,frame size, compression ratio, quality of service, and so on forinformation delivery to terminal devices. As previously noted, a serviceprovider is any device or combination of devices that providesinformation to a terminal device via the network environment. Forexample, service providers may provide streaming video, news feeds,stock quotes, multimedia messaging, and so on to terminal devices.

[0035] The user information 202, such as the terminal capabilities,presence information, location information, and readiness information,may be updated dynamically as circumstances change. For example, if theuser changes terminals after coming home from work, new terminalcapabilities, readiness information, presence information, and locationinformation for the user may be provided from the terminal to thenetwork and stored in the user information of the HLR 120. Terminaldevices, service providers, network elements, and network operators arejust some of the sources from which updates to the user information 202may be derived.

[0036] Wireless devices may roam from one network to another. Thenetwork to which the wireless device is subscribed for access isreferred to herein as the device's home network. Networks other than thehome network that the device may access are referred to herein asroaming networks. In one embodiment, a terminal device attempts toaccess a service of a roaming network. A request to access the userinformation associated with the device is communicated from the roamingnetwork to the home network. The access control 144 of the home networkdetermines if the requesting network, service provider, or networkelement is authorized to access the user information for the device. Forexample, the service provider 142 may request to access the userinformation for the wireless device 133 when the wireless device 133roams on the network comprising MSC 126. When the service provider,network, or requesting network element of the roaming network isauthorized, the user information (or parts thereof) may be communicatedfrom the HLR 120 of the home network to the VLR 110 or other storagelocation of the roaming network. The user information may be transferredalso or alternatively to the requesting service provider and/or networkelement.

[0037]FIG. 3 is a flowchart of an embodiment of a method to provide userinformation for a roaming user. At 302 a user accesses a roaming networkusing a terminal device. At 304 the user's identification is provided tothe roaming network. For example, the terminal device may provideidentification information in the form of a numeric or alphanumericsequence. The code may identify the user of the terminal device, or mayidentify the terminal device and the user thereof by association.Examples of such codes are the Mobile Identification Number (MIN), theMobile Station Identifier (MSID), Mobile Directory Number (MSN), andInternational Mobile Station Identifier (IMSI). At 306 the roamingnetwork (e.g. a network element of the roaming network) and/or serviceprovider requests from the home network of the user the user informationcorresponding to the user identification. Typically this will involveproviding the identification to the home network, along with the requestfor at least part of the user information. In one embodiment, accesscredentials (e.g. identification and password) for the user informationare provided along with the request. In another embodiment, the accesscredentials may be provided separately from the request. At 308 the homenetwork provides the requested user information. The roaming networkstores the user information at 310. For example, the roaming network maystore the user information in the in the roaming network's VLR.

[0038] In one embodiment, roaming networks and/or service providers maypurchase subscriptions from the operator of the home network in order toreceive authorization to access the user information of users and/orterminals for which the network is the home network. Access may belimited to subsets of the user information. For example, some serviceproviders may have access limited to terminal capabilities and userpreferences, sufficient to determine whether the service provider canprovide adequate service to the user's terminal device. Other serviceproviders may purchase subscriptions that provide access to usagestatistics, such as those services most frequently and most recentlyused by the user. This information may prove useful for marketingpurposes. The cost of the subscription may be set according to which ofthe user information the service provider has access to. Of course,subscriptions are only one possible manner of compensating for access tothe user information. Other manners of compensation include transactioncharges (pay-per use), charging a percentage of the service price, andso on.

[0039] Network elements and service providers may interact to exchangeuser information in order to cooperatively provide an improved userexperience when delivering services.

[0040]FIG. 4 is a block diagram of an embodiment of terminal capabilityinformation. The terminal capability information may be organizedaccording to categories, such as graphics, processor, memory, andcommunications. Of course these are merely examples of possiblecategories. The categories may be defined according to subsystems of theterminal device. For example, the graphics category may compriseinformation about the graphics subsystem of the terminal device,information such as the display size, graphics processor, and colorsemployed by the graphics subsystem of the terminal device. The processorcategory may comprise information about the main processor employed bythe terminal device, information such as the processor clock speed, datasize, and cache size. The memory category may comprise information aboutthe memory subsystem of the terminal device, information such as thememory size, speed, and bit width. The communication category maycomprise information about the communication capabilities of theterminal device, information such as the communication bandwidth thedevice supports and the codec(s) the device supports.

[0041] Templates may be created comprising terminal capabilities forclasses of devices (e.g. mobile phones, set-top boxes, personalcomputers, etc.). A template may comprise categories and capabilitiesappropriate for the class of device the template represents.

[0042]FIG. 5 is a block diagram of an embodiment of service requirementinformation. Service providers may provide to the network requirementsfor the services they provide, such as graphics, processor, memory,communications, cost, and so on. The service requirement information maybe organized according to categories, such as graphics, ,processor,memory, and communications. Of course these are merely examples ofpossible categories. The categories may be defined to correspond withthe categories of the terminal capabilities. For example, the graphicscategory may comprise information about the graphics requirements toproperly render the service information, information such as the displaysize, graphics processor, and colors that a terminal should employ toproperly.,render the service information to the user. The processorcategory may comprise information about the processing capabilities thatneed be employed by the terminal device to properly receive and renderthe service (e.g. processor speed). The memory category may compriseinformation about the memory requirements to properly receive and renderthe service on a terminal device (e.g. minimum available memory, memoryspeed). The communication category may comprise information about thecommunication requirements to properly receive and render the service ona terminal device (e.g. bandwidth, codec).

[0043] Upon receiving a service request from a terminal device, thenetwork may attempt to match corresponding categories of the terminalcapabilities and service requirements to identify services that arecompatible with the terminal.

[0044] Information of the cost category of the service requirements maybe compared with the payment parameters of the user information toidentify services that are within the user's payment parameters.

[0045] Information of the user preference category of the servicerequirements may be compared with the user preferences (media deliverypreferences) of the user information to identify services that can bedelivered according to the user's preferences.

[0046]FIG. 6 is a flowchart of embodiment of a method of handlingchanges in a user's terminal capabilities. The method may be employed,for example, when a user switches from using one terminal device tousing another, or when the capabilities of the user's terminal changedue to changing communication conditions (e.g. a user of a broadbandterminal roams to an area where broadband communication is not possiblevia the terminal). At 602 a service request from the terminal isreceived. For example, the terminal may communicate a request totransact multimedia messaging, receive stock quotes, receive news feeds,and so on. At 604 the terminal capabilities for the terminal device isretrieved. The terminal capabilities may be retrieved from the userinformation for the user of the terminal device, e.g. from an HLR, VLR,or other storage location, or received from the terminal device itself.At 606 the terminal capabilities are matched with the servicerequirements of different service providers to identify those providerscapable of providing the service to the terminal device. For example,while there may be several service providers capable of providingmultimedia messaging to personal computers that communicate via thenetwork, only one of the several may be capable of providing multimediamessaging to wireless telephones. Once a suitable service provider islocated, the service is provided to the terminal at 608. At 610 theterminal capabilities for the user change. This could occur, aspreviously noted, under various circumstances. Such circumstancesinclude a change in the terminal employed by the user, and/or changes inthe communication environment of the user's terminal. At 612 thechanged-terminal capabilities are again matched with servicerequirements of the various providers, to locate a suitable provider.The service is then provided to the terminal by the suitable provider at614.

[0047]FIG. 7 is a block diagram of an embodiment 700 of a wirelesstelephone. A wireless communication interface 706 is coupled to a memory704 and a digital signal processor (DSP) 718. The wireless communicationinterface 706 converts signals of the DSP 718 and/or the memory 704 intowireless signals that may be transmitted via the antennae 702. Numerousother well-known elements of the telephone embodiment 700 have beenomitted for clarity.

[0048] The memory 704 comprises terminal capabilities 710 and readinessinformation 712 for the telephone 700. The memory 704 further compriseslogic 714 to update the readiness information 712 (and possibly also toupdate the terminal capabilities 710) and to communicate the readinessinformation 712 and terminal capabilities 710 to a network. Storing andupdating the readiness information is referred to herein as‘maintaining’ the readiness information. In one embodiment, changes tothe readiness information 712 and possibly also the terminalcapabilities 710 are automatically (without involving actions by a userof the wireless phone) communicated to the network, wherein the terminalcapabilities and readiness information of the user information isupdated accordingly. Logic 714 may comprise any set of instructionsignals and/or data that may be applied to/processed by the DSP 718 orother processor of the telephone 700, or in general applied to controlthe operation of the phone. Logic 714 may be embodied in software,hardware, firmware, and/or combinations thereof.

[0049] The telephone 700 may comprise a location system 724 to identifythe device's location to the network. The location system 724 maycomprise a geographic location system, such as a Global PositioningSystem (GPS), or a system to determine the telephone's location usingcell-site-triangulation. The location system 724 may also provide alogical location of the user, e.g. “In a meeting”, “In transit”, “At theOffice”, and so on. The location system 724 may access information of auser profile, calendar, schedule, task list, and so on stored by thetelephone in order to ascertain the telephone's logical position. Thelogic 714 may further operate to communicate location information viathe wireless interface 706.

[0050] The telephone 700 may comprise a presence system 726 to identifywhether the user is present at or near the telephone. The presencesystem 726 may comprise motion detection, vibration detection, keyboardand/or voice activity detection, and/or other technology to detect theuser's presence. The logic 714 may further operate to communicatepresence information via the wireless interface 706.

[0051] A display 716 may be employed to display information to a user ofthe phone 700. An input device 722 such as a keypad, buttons, touch pad,or voice recognition interface allows the user to input and/or selectinformation of the phone 700. In one embodiment, the input device 722may be integral with the display 716 (e.g. touch or pressure-sensitivescreen). Of course, the phone 700 may also comprise other input/outputtechnologies, such as a microphone and speakers.

[0052]FIG. 8 is a block diagram of a network embodiment. The networkcomprises network elements 802, 804, 806 coupled to the MSC 116. Thenetwork further comprises a service portal network element 808 coupledto the MSC 116. In one embodiment the MSC 116 may allocate and assignresources of the network elements 802,804,806 to create “subnetworks”,each to manage a type of network traffic. For example, one subnetwork (acollection of computational, operational, and storage resourcesallocated from among the network elements 802,804,806) may be assignedto handle terminal management. Another subnetwork may be assigned tohandle service management, and still another to handle networkmanagement. In general, responsibility for managing and applying theuser information may be divided among subnetworks according to theapplication to which the user information is applied. The userinformation of the HLR 120 may be “multiported” to allow simultaneous(or a close approximation thereof) access by the various subnetworks.

[0053] The terminal management subnetwork may interact with terminaldevices to collect and store terminal capabilities. The terminalmanagement subnetwork may be employed by other network elements toaccess the terminal capabilities of the user information.

[0054] When a user requests a service, the service subnetwork may employthe user information for the user to identify suitable serviceproviders.

[0055] Network elements may employ the network management subnetwork todetermine network management requirements for services and terminaldevices. The network management subnetwork may access the userinformation to provide the network element with relevant networkmanagement information (such as how much bandwidth to allocate and thequality of service to apply to provide a particular service to aparticular terminal device). The network management subnetwork mayupdate the user information with relevant network management informationreceived from terminal devices, service providers, and/or variousnetwork elements.

[0056] In general, at least one network element (such as the HLR 120)may be employed to store user information comprising terminal devicecapabilities and readiness information; another network element (such asnetwork element 802) may access the user information and adjust mediadelivery parameters to the terminal device accordingly.

[0057] In one embodiment, the MSC 116 is employed to routecommunications to the appropriate subnetwork. Routing may be performedbased upon, for example, packet headers that identify a particularcommunication as terminal management, service management, networkmanagement, and so on.

[0058] The resources of each subnetwork may be assigned statically, ordynamically by the MSC 116 according to, among other considerations, theamount of traffic of a particular type. Subnetwork resources includeoperating, memory, and processing capabilities.

[0059] The service portal 808 may be employed to locate services thatare suitable to a terminal that requests the services. For example, aterminal device 133 may request streaming video service. The terminaldevice 133 may communicate the request to the MSC 116 via the BSC 104.The service portal 808 may communicate the request, along with terminalcapabilities obtained from the terminal device 133 or from the userinformation, to the service providers 160, 142 (see FIG. 1). The serviceproviders 160, 142 may in turn provide bids to the service portals. Inone embodiment, the service portal 808 is a stand-alone network element.In another embodiment, the service portal 808 is comprised by the MSC116, e.g. the service portal 808 is a functional subdivision of the MSC116.

[0060] In one embodiment, one or more terminals and/or users may betreated collectively as a “logical user.” This may be advantageous, forexample, where service information is multicast to multipleterminals/users. The user information for each user of the logical usermay be accessed and processed to determine user information for thelogical user (for example, using statistics, averaging, selecting thelowest or highest value, etc.) The user information for the logical usermay be applied to determine media delivery parameters for the userand/or terminals of the logical user, such as a bandwidth, quality ofservice, frame rate, and so on.

[0061] The user preferences, payment parameters, terminal capabilities,and other user information for a user may be dynamically updated by theservice portal 808 according to the user's location, the terminal devicethey are employing, and so on. The service portal 808 may communicateuser information, such as media delivery preferences, paymentparameters, usage information, terminal capabilities, and readinessinformation, to available service providers. Those service providerswith service requirements compatible with the user information mayreturn bids. The service portal 808 may select from among the serviceproviders that return bids. A selected service provider may interactwith other network elements (such as the service management subnetwork)to determine an appropriate service contract for the user.

[0062] A processor 814 and logic 812 of the MSC 116 may operatecooperatively to form a classifier of the communications received fromthe terminal device(s) 133 and the other network elements. In otherembodiments, the classifier may be a separate (stand-alone) device thatinterfaces with the MSC 116 to monitor and classify communications.

[0063] The communication may be classified as a type of userinformation. More generally, the communication may be classifiedaccording to one or more applications to which it applies, e.g. terminalmanagement, service management, or network management. Inpacket-switched networks, one manner of classifying the communicationsis to examine the communication packet headers. A router 810 may beemployed to route the communications to one or more of a plurality ofsubnetworks comprising resources of the network elements 802, 804, 806.

[0064] The logic 812 and processor 814 may further operate on thecommunications to determine network usage statistics for terminaldevices and/or users thereof, including a service usage history, a mostrecently used service, and a most frequently used service. Thisinformation may be routed to the appropriate subnetwork for furtherprocessing.

[0065]FIG. 9 is a block diagram of a network embodiment. A controller904 network element is coupled to the network elements 802, 804, 806,among which responsibility for managing and applying the userinformation may be divided. The controller 904 may provide variousfunctions, including access control to the user information. Thecontroller 904 may collect user information from the network elements802, 804, 806 and cause the user information to be stored, for examplein the HLR 120. The controller 904 may read user information from theHLR 120 and provide the user information to other network elementsand/or service providers 902. The controller 904 may also compare theservice requirements of one or more service providers with userinformation to ascertain which service providers are suitable to meet aservice request. The controller 904 may identify one or more suitableservice providers to a terminal device that provided the servicerequest. The terminal device, in turn, may provide a selection of theservice provider to employ to deliver the service. Alternatively, thecontroller 904 may select a service provider on behalf of one or moreterminal devices and/or users.

[0066] In one embodiment, the controller 904 may comprise logic 906 toallocate and assign resources of the network elements 802,804,806 tocreate “subnetworks”, each to manage a type of network traffic, similarto the function of the MSC in FIG. 8. For example, one subnetwork mayhandle terminal management. Another subnetwork may handle servicemanagement, and still another may handle network management. The logic906 may be applied to provide access control to the user information.

[0067] In one embodiment, the MSC 116 is employed to routecommunications to the appropriate subnetwork. Routing may be performedbased upon, for example, packet headers that identify a particularcommunication as terminal management, service management, networkmanagement, and so on.

[0068] The resources of each subnetwork may be assigned statically, ordynamically by the controller 904. One factor in determining the amountof resources to assign to a particular subnetwork is the amount ofcommunication traffic the subnetwork will manage.

[0069]FIG. 10 is a block diagram of a network embodiment. The MSC 116comprises at least one input 1016 to receive communications from one ormore terminal devices 133. The MSC 116 may also receive communicationsfrom one or more other network elements 1002, via input 1016 and/orother inputs. A processor 1014 and logic 1012 may operate cooperativelyto form a classifier of the communications received from the terminaldevice(s) 133 and the other network elements 1002. In other embodiments,the classifier may be a separate unit that interfaces with the MSC 116to monitor and classify communications.

[0070] The communication may be classified as a type of userinformation, e.g. terminal capabilities, service information, and/ornetwork information. More generally, the communication may be classifiedaccording to one or more applications to which it applies, e.g. terminalmanagement, service management, network management, or some otherapplication. In packet-switched networks, one manner of classifying thecommunications may be to examine the communication packet headers. Arouter 1010 may be employed to route the communications to one or moreof a plurality of subnetworks 1004, 1006, 1008, according to theclassification.

[0071] The logic 1012 and processor 1014 may further operate on thecommunications to determine network usage statistics for terminaldevices and/or users thereof, including a service usage history, a mostrecently used service, and a most frequently used service. Thisinformation may be routed to the appropriate subnetwork for furtherprocessing.

[0072] The resources of each subnetwork 1004, 1006, 1008 may be assignedstatically, or dynamically by the MSC 116. Subnetwork resources includememory and processing capabilities. Each subnetwork 1004, 1006, 1008 maybe responsible for causing a type of user information to be read fromand stored in a storage location of the network, such as in a homelocation registry 120 or home subscriber system.

[0073]FIG. 11 is a block diagram of a network embodiment. A plurality ofservice providers 1102, 1104, 1106 are coupled to the MSC 116. Aterminal device 133 accesses the network via a service portal 808. Theservice portal receives service requests from the terminal device 133. Aplurality of terminal devices may access the network via the portal 808.The portal 808 may receive terminal capabilities and payment parametersfor a terminal device 133 (either from the terminal device 133 or from astorage location such as the HLR 120). The service portal 808 may alsoreceive user preference information for a user of the terminal device133, again from either the device 133 or from a storage location of thenetwork. In like fashion, the service portal 808 may receive presenceinformation, location information, and readiness information for thedevice 133. The portal 808 comprises logic 1110 to provide the terminalcapabilities and payment parameters to one or more service providers1102, 1104, 1106 associated with the network, and to receive andevaluate bids returned by service providers that are capable ofproviding a service compatible with the terminal capabilities andpayment parameters. Additional information may be provided to theservice providers 1102, 1104, 1106, such as the user preferences. Inthis manner the service providers 1102, 1104, 1106 may provide moreaccurate and/or meaningful bids.

[0074] In one embodiment, less user information is provided to theservice providers 1102, 1104, 1106. The logic 1110 of the portal 808operates to select which service providers to solicit bids from, basedon information about the service requirements of the service providers.In other words, bids are solicited only from service providers withservice requirements compatible with the terminal capabilities, paymentparameters, user preferences, and so on of the terminal device 133.

[0075] The logic 1110 may operate to evaluate the bids and to select aservice provider to provide the service to the terminal device 133. Thelogic 1110 may further operate to form a service contract with theselected service provider on behalf of the user of the terminal device133, and to connect the selected service provider with the terminaldevice 133 such that the service can be delivered. The logic 1110 mayalso operate to update, in the network storage location (e.g. HLR, HSS),any user information for the user of the terminal device 133.

[0076]FIG. 12 is a flow chart of an embodiment of a method to provideservices to terminal devices. At 1202, 1204, and 1206 a service request,payment parameters, and other user information respectively arereceived. The other user information may comprise at least one of userpreferences, presence information, location information, terminalcapabilities, and readiness information. At 1208 and 1210 at least someof the user information, such as the terminal capabilities and paymentparameters, is provided to a plurality of service providers. Aspreviously noted, the amount of information provided to the serviceproviders may vary in different embodiments. At 1212 bids are receivedfrom the service providers; the bids are evaluated, and a serviceprovider is selected to provide the service at 1214. A service contracton behalf of the user of the terminal device is formed with the serviceprovider at 1216.

[0077] At 1218 the terminal device is connected with the selectedservice provider, such that the service may be delivered to the terminaldevice. User information stored by the network (e.g. in the HLR or HSSor other storage location) may be updated at 1220 with informationobtained from the terminal device, service provider, or other source. Inthis manner the user information of the network is maintained up todate.

[0078] While certain features of the invention have been illustrated asdescribed herein, many modifications, substitutions, changes andequivalents will now occur to those skilled in the art. It is, therefor,to be understood that the appended claims are intended to cover all suchembodiments and changes as fall within the true spirit of the invention.In the claims, references to “a” or “an” element do not limit the claimsto a single one of the element, but instead indicate one or more of theelement, unless otherwise indicated.

What is claimed is:
 1. A network element comprising: at least one inputto receive communications from a plurality of terminal devices and aplurality of network elements; a processing unit and logic to classifythe communications as a type of user information; and a router to routethe communications according to the type of user information.
 2. Thenetwork element of claim 1 further comprising: logic to determinenetwork usage statistics from the communications.
 3. The network elementof claim 2 further comprising: the logic to determine network usagestatistics to determine at least one of a service usage history, mostrecently used service, and most frequently used service for each of theterminal devices.
 4. The network element of claim 1 further comprising:the network element comprising a mobile switching center.
 5. A networkcomprising: a network element to receive communications from at leastone terminal devices and at least one other network elements and toclassify the communications as a type of user information; and a routerto route the communications to at least one of a plurality ofsubnetworks according to the type of user information.
 6. The network ofclaim 5 further comprising: logic to determine at least one of a serviceusage history, most recently used service, and most frequently usedservice for each of the at least one terminal devices.
 7. The network ofclaim 5 further comprising: the network element to receivecommunications from at least one terminal devices and at least one othernetwork elements and to classify the communications as a type of userinformation comprising a mobile switching center; and the mobileswitching center comprising the router.
 8. A method comprising: a mobileswitching center identifying communications comprising user informationas at least one of terminal capabilities, service information, andnetwork information; and the mobile switching center routing thecommunications according to whether the communications is terminalcapabilities, service information, or network information.
 9. The methodof claim 8 further comprising: the mobile switching center determiningat least one of a service usage history, most recently used service, andmost frequently used service for at least one terminal devices.
 10. Themethod of claim 8 further comprising: the mobile switching centerreceiving communications from at least one terminal devices and at leastone network elements; the mobile switching center classifying thecommunications as one of terminal capabilities, service information, andnetwork information; and the mobile switching center routing thecommunications according to whether the communications is terminalcapabilities, service information, or network information.
 11. Themethod of claim 10 further comprising: the mobile switching centerassigning network resources to provide at least one of a terminalmanagement subnetwork, a service management subnetwork, and a networkmanagement subnetwork.
 12. The method of claim 8 further comprising: themobile switching center routing the communications to a plurality ofsubnetworks according to the type of user information; and thesubnetworks causing the user information to be stored in one of a homelocation registry and a home subscriber system.
 13. A networkcomprising: a classifier to classify communications as a type of userinformation; a router to route the communications according to the typeof user information; a plurality of network elements to receive thecommunications from the router and to process a type of userinformation; at least one of a home location registry and a homesubscriber system to store user information; and a controller to receiveuser information from the plurality of network elements and to cause theuser information to be stored in the at least one of a home locationregistry and the home subscriber system.
 14. The network of claim 13further comprising: a mobile switching center comprising the classifierand the router.
 15. The network of claim 13 further comprising: thecontroller comprising logic to provide access control to the userinformation.
 16. A mobile switching center comprising: at least oneinputs to receive information from terminal devices and networkelements; and logic to route the information to at least one of aplurality of subnetworks according to whether the information isapplicable to terminal management, service management, or networkmanagement.
 17. The mobile switching center of claim 16 furthercomprising: logic to determine at least one of a service usage history,most recently used service, and most frequently used service for theterminal devices.
 18. A network element comprising: at least one inputto receive service requests from terminal devices; and logic to accessuser information for the terminal device and to compare the userinformation with service requirements of at least one service providers.19. The network element of claim 18 further comprising: logic to causeupdates to stored user information.
 20. The network element of claim 18further comprising: logic to select, according to terminal capabilitiesfor the terminal device, a service provider to respond to the servicerequest.